package com.kyle.dao.base;


import java.util.LinkedHashMap;
import java.util.List;

import com.kyle.entity.util.PageBean;


public interface BaseDao<T> {
	
	public void saveEntity(T t);
	public void updateEntity(T t);
	public void saveOrUpdateEntity(T t);
	public void deleteEntity(T t);
	
	public void batchEntityByHQL(String hql,Object...objects);
	
	public void executeSQL(String sql,Object...objects);
	
	public T getEntity(Integer id);
	public T loadEntity(Integer id);
	public List<T> getAllEntry();
	public List<T> findEntityByHQL(String hql,Object...objects);
	public List<T> findEntityByHQL(String hql, Object objects[],PageBean pageBean);
	public Object uniqueResult(String hql,Object...objects);
	
	public List<T> findObjectBySQL(String sql,Object...objects);
	
	public List getScrollData(PageBean pageBean,String wherejpql, Object[] queryParams,LinkedHashMap<String, String> orderby);
	
	public Object getScrollDataCount(String wherejpql, Object[] queryParams);
}
